
           Common Controls Replacement Project FolderTreeview Control
                         Version 1.00.0006 Oct 30, 1999

Overview
========

The FolderTreeview control is a standard treeview control created directly from
Comctl32.dll that provides functionality nearly identical to the tree pane in
Explorer. It allows browsing of the shell's entire namespace and displays the
shell's folders in their current state. Though it exposes and returns many
properties and methods similar to that of the familiar TreeView control found
in Comctl32.ocx, it provides many other unique features:

- Any folder can be specified to be the control's root and selected folders. 

- Implements optional auto refresh mode, where any folder changes made in Explorer
  (such as folder renaming, moving or deleting) are automatically and immediately
  reflected in the control. 

- Has an IntegralHeight property where the control automatically resizes itself
  vertically so that folders will not be partially displayed. 

- The tree can be tailored to any appearance, including how it displays folder
  connecting lines and buttons ("+", "-"), the distance that folders are indented
  within the control, whether shared folders display associated share icons, and
  checkboxes folder multiple folder selection.

- Allows the developer control of whether to have the shell automatically display
  error message boxes as a result of invalid folder selection (i.e. selecting a
  removable drive containing no disk or selecting a disconnected network share). 

Though not implemented in this release version, subsequent versions of the control
may provide even more Explorer and enhanced functionality, including a right click
shell context menu, folder drag and drop.

File Contents
=============

To provide developers Visual Basic runtime specific flexibility, the CCRP
FolderTreeview Control will be distributed in both VB5 SP2/SP3 and VB6 SP0/SP1
multi-threaded builds, available in two separate zip files, ccrpftv5-b3.zip and
ccrpftv6-b3.zip, respectively, containing the following files:

VB5 SP2/SP3		VB6 SP0/SP1
ccrpftv5-10.zip		ccrpftv6-10.zip		Description
--------------		---------------		-----------
ccrpftv.ocx		ccrpftv6.ocx		CCRP FolderTreeview Control
ccrpftv.tlb		ccrpftv6.tlb		component type libraries, for
						remote installations
ccrpftv.vbr		ccrpftv6.vbr		list of component registration
						entries, for remote installation
ccrpftv.dep		ccrpftv6.dep		list of the component runtime file
						dependencies
demos/*			demos/*			various VB demo projects, see below

Note that because the VB5 version of the control was initially released before it
was realized that a VB6 version of the control would also need to be released, the
VB5 control and ancillary files do not include a "5" suffix to clearly indicate the
VB platform build.

Included Demos
==============

Six example projects are included that demonstrate much of the functionality of
the control. The first is a very simple demonstration of how the FolderTreeview
control can be used with VB's DriveListBox and FileListBox. The second and third
demonstrate the control's properties and events, respectively. The forth is a
rather extensive demonstration employing the use of a WebBrowser control producing
basic, yet a interesting Internet Explorer like user interface. The fifth puts
the control under heavy stress by having it load and expand each and every folder
on the system's local hard drives. The last demo shows how to easily replace the
control's checkbox images.

Included with the demos is both a form module (BrowseDlg.frm) that shows how to
duplicate the functionality and appearance Browse For Folder dialog box, and a
rather rudimentary, yet handy, vertical splitter bar class (VSplitterWnd.cls).

Help file
=========

The control has no help file. A help file may eventually be created and posted
as a separate download on the CCRP site (URL is below) at some time in the future.

Though the FolderTreeview's properties, methods and events are not too great
in number, and are fairly self explanatory, in the interim, you can view their
descriptions in either of two ways in VB's designtime environment. Properties
and their descriptions are obviously available in the Properties window. The
Object Browser (F2) provides complete information of all the members the control
exposes. Selecting the "Definition" command after a right click on a member in
the code window will also open the Object Browser and take you directly to that
member.

The FolderTreeview control and it's Folder object's methods are also listed in
the included "FolderTreeview Member Attributes.txt" and "Folder Object Member
Attributes.txt" text files respectively.

Registering the control
=======================

Use RegSvr32 or the Browse button in the Components dialog box within the VB IDE
to register the control. If an error occurs while attempting to register the
control, it is possible that you either do not have the VB5 SP2 or VB6 version
of the runtime installed (see VB version issues below).

You can also use the included CCRP Registration Utility (ccrpRegUtil.exe)
to register and unregister the FolderTreeview control, as well as the IShellFolder
type library (ISHF_Ex.tlb) used by the Internet Explorer demo mentioned above. 

VB version issues
=================

If an error occurs while registering either version of the CCRP FolderTreeview
control, or while attempting to use the component in the VB IDE, it is entirely
likely that the correct VB runtime library and/or the runtime library's dependent
files are not installed. The respective runtime libraries and dependent files can
be obtained from the following Microsoft Support Online articles:

"FILE: Msvbvm50.exe Installs Visual Basic 5.0 Run-Time Files".
http://support.microsoft.com/support/kb/articles/q180/0/71.asp

"FILE: VBRun60.exe Installs Visual Basic 6.0 Run-Time Files"
http://support.microsoft.com/support/kb/articles/Q192/4/61.asp


For more information or comments about the CCRP FolderTreeview Control, please
refer to either URL below.

Copyright (C) 1997-99 Brad Martinez, CCRP
http://www.mvps.org/ccrp
news://news.mvps.org/ccrp.foldertreeview
